/***********************************************************************
 * Module:  CopierOriginator.java
 * Author:  Dian
 * Purpose: Defines the Class CopierOriginator
 ***********************************************************************/

package originator;

import memento.CopierMemento;
import memento.Memento;
import caretaker.Enregistreur;

import command.Command;

public class CopierOriginator implements Originator{

	private Enregistreur enregistreur;
	
	private Command copier;
	
	public CopierOriginator(Enregistreur enreg, Command cmd) {
		super();
		this.enregistreur = enreg;
		this.copier = cmd;
	}
	
	@Override
	public void execute() {
		Memento m = new CopierMemento(this);
		enregistreur.ajouterMemento(m);
		copier.execute();		
	}

	@Override
	public void setMemento(Memento m) {
		this.execute();
	}
}